package com.project.mapper;

import com.project.bean.CarBean;
import com.project.bean.ManBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 公民Mapper
 */
public interface IManMapper {
    /**
     * 查询所有公民，并统计每个公民的汽车数量
     * @return 公民集合
     */
    public List<ManBean> findAll();

    /**
     * 添加公民
     * @param man 公民对象
     * @return 新加公民的ID
     */
    public void addMan(ManBean man);

    /**
     * 批量添加汽车集合
     * @param carList 汽车集合
     * @param manId 公民ID
     */
    public void addCar(@Param("carList") List<CarBean> carList,@Param("manId") int manId);

    /**
     * 删除公民，同时将该公民所有的汽车外键设置为null
     * @param id 公民ID
     */
    public void delSetNull(int id);
    /**
     * 按ID查询公民，同时查询该公民的汽车
     * @param id 公民ID
     * @return 公民对象
     */
    public ManBean findByIdIncludeCar(int id);
}
